Tigase XMPP Server 8.3.0 Change notes
-------------------------------------

Major Changes
^^^^^^^^^^^^^

* This version requires JDK17 to run
* Added support for mam2#extended [#mam-73]
* Rework certificate generation to utilise `keygen` tool instead of using `sun.*` API unavailable under JDK17
* Added support for XEP-0440 SASL Channel Binding Type Capability and fixed and reenabled `SCRAM-*-PLUS SASL` mechanisms [#server-1335]
* Added initial,preview support for SASL2 and Bind2 (disabled by default) - to enable, activate beans `'urn:xmpp:bind:0'` and `'urn:xmpp:sasl:2'` in `'sess-man'` [#server-1332]


All Minor Features & Behavior Changes
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Increased network socket buffer from 2K to 4K to improve performance when reading data from socket. It can increase somewhat memory usage proportionally to number of concurrent user connections. It's possible to configure size of this buffer using `socket-buffer-size` property - please see documentation.
- Add configuration to log size generated by LoggerTask in Monitor and decrease default from 1M to 50K; Disable serialisation of monitor events; #servers-372
- Add DOAP file; update documentation with supported features; #server-1076
- Fix issue with NPE in JabberIqAuth plugin when no password was presented due to missing return statement; fixed similar issue where, after closing the connection, the execution of the code wasn't terminated in JabberIqAuth and SaslAuth plugins #server-1317
- Add support for XEP-0398 to feature list and updated list of supported features; #server-1316
- Change try-catch statement in database schema loader to better catch edge cases; #serverdist-10
- Remove wildcard certificate generation (as main DN) in certificate container to avoid issues that it entails (inability to override such self-signed certificate via ad-hoc commands!). Wildcards are now properly handled by CertificateGenerateor and are included correctly as SAN in addition to DN for main domain; Fix handling "default" certificates from repository; #server-1279
- Change default watchdog ping from (forbidden by RFC) whitespace to xmpp; add warning if someone configures it as whitespace either way; server-1318
- Improve XMPPDomBuilderHandler logging; #server-1323
- Improved Stream Management code responsible for generating `<r/>` requests #server-1324 (#150)
- Added `socket-buffer-size` option to `ConnectionManager` to configure `SO_RCVBUF` separately from internal network buffers #server-1325
- Increased socket-buffer-size for client-to-server and intercluster connections and added documentation #server-1325
- Fix MAX_PAUSE property name; #server-1326
- Updated implementation of XEP-0377: Spam Reporting #server-1327
- Fixed issue with errors being sent for unexpected <iq type=result/> stanzas #server-1328
- Improved exceptions handling in StanzaProcessor #server-1328
- Switch from jtds to MS own jdbc driver; #serverdist-12
- Prevent re-delivery of certain S2S packets (sasl, features, dialback, etc) as it doesn't make sense; #server-1320
- Adjust log levels to avoid WARNINGS during startup for regular messages; #server-1115
- Add 'active in last x' statistic; #server-1281
- Include option to restart JVM on OOM (off by default)
- Correctly process packets from mobile queue instead of re-adding currently filtered packet; #server-1331
- Improvements to NativeMemoryTracking implementation with units; documentation; #server-1330
- Improve MAM logging; #servers-384
- Only count stanzas in StreamManagement #server-1333
- Fixed advertisement stream features for unauthorized stream #server-1334
- Fixed NPE during preparing stream features when connection is already closed #server-1334
- Added initial support for SASL2 and Bind2 (preview feature, disabled by default) #server-1332
- Added support for XEP-0440 SASL Channel Binding Type Capability and fixed and reenabled `SCRAM-*-PLUS SASL` mechanisms [#server-1335]
- Fixed NPE during enabling of stream resumption #server-1332
- Fixed sending block/unblock presences from blocking command for domain #server-1336
- Better default for lastXmppPacketReceivedTime member to avoid WatchDog closing connection before lastXmppPacketReceivedTime is set; #server-1337
- Add proper addressing validation in S2S connection and allow connections without 'from' set; #server-1338